home *** CD-ROM | disk | FTP | other *** search
/ Personal Computer World 2009 February / PCWFEB09.iso / Software / Linux / Kubuntu 8.10 / kubuntu-8.10-desktop-i386.iso / casper / filesystem.squashfs / usr / share / file / magic.mime < prev   
Text File  |  2008-07-11  |  35KB  |  1,028 lines

  1. # Magic data for KMimeMagic (originally for file(1) command)
  2. #
  3. # Note on adding additional MIME types:
  4. #
  5. # [RFC2045,RFC2046] specifies that Content Types, Content Subtypes, Character
  6. # Sets, Access Types, and conversion values for MIME mail will be assigned and
  7. # listed by the IANA.
  8. # http://www.iana.org/assignments/media-types/
  9. #
  10. # Any unregistered file type should be listed with a preceding x-, as in
  11. # application/x-foo (RFC2045 5.1), or a x., as in application/x.foo (RFC4288
  12. # 4.3).  Any non x-prefixed type should be registered with IANA and listed at
  13. # the above address.  Any other behavior is a MIME standards violation!
  14. #
  15. # It is preferred that when a registered MIME type exists, that
  16. # the registered Content-Type and Subtype be used to refer to a file of
  17. # that type, so don't use application/x-zip when application/zip is
  18. # registered.
  19. #
  20. # If an active RFC suggests that a MIME registration for a new type is in
  21. # progress, make a note of it pointing to that RFC.
  22. #
  23. # The format is 4-5 columns:
  24. #    Column #1: byte number to begin checking from, ">" indicates continuation
  25. #    Column #2: type of data to match
  26. #    Column #3: contents of data to match
  27. #    Column #4: MIME type of result
  28. #    Column #5: MIME encoding of result (optional)
  29.  
  30. #------------------------------------------------------------------------------
  31. # Localstuff:  file(1) magic for locally observed files
  32. # Add any locally observed files here.
  33.  
  34. # Real Audio (Magic .ra\0375)
  35. 0    belong        0x2e7261fd    audio/x-pn-realaudio
  36. 0    string        .RMF        application/vnd.rn-realmedia
  37.  
  38. #video/x-pn-realvideo
  39. #video/vnd.rn-realvideo
  40. #application/vnd.rn-realmedia
  41. #    sigh, there are many mimes for that but the above are the most common.
  42.  
  43. # Taken from magic, converted to magic.mime
  44. # mime types according to http://www.geocities.com/nevilo/mod.htm:
  45. #    audio/it    .it
  46. #    audio/x-zipped-it    .itz
  47. #    audio/xm    fasttracker modules
  48. #    audio/x-s3m    screamtracker modules
  49. #    audio/s3m    screamtracker modules
  50. #    audio/x-zipped-mod    mdz
  51. #    audio/mod    mod
  52. #    audio/x-mod    All modules (mod, s3m, 669, mtm, med, xm, it, mdz, stm, itz, xmz, s3z)
  53.  
  54. # Taken from loader code from mikmod version 2.14
  55. # by Steve McIntyre (stevem@chiark.greenend.org.uk)
  56. # <doj@cubic.org> added title printing on 2003-06-24
  57. 0    string    MAS_UTrack_V00
  58. >14    string    >/0        audio/x-mod
  59. #audio/x-tracker-module
  60.  
  61. #0    string    UN05        MikMod UNI format module sound data
  62.  
  63. 0    string    Extended\ Module: audio/x-mod
  64. #audio/x-tracker-module
  65. ##>17    string    >\0        Title: "%s"
  66.  
  67. 21    string/c    \!SCREAM!    audio/x-mod
  68. #audio/x-screamtracker-module
  69. 21    string    BMOD2STM    audio/x-mod
  70. #audio/x-screamtracker-module
  71. 1080    string    M.K.        audio/x-mod
  72. #audio/x-protracker-module
  73. #>0    string    >\0        Title: "%s"
  74. 1080    string    M!K!        audio/x-mod
  75. #audio/x-protracker-module
  76. #>0    string    >\0        Title: "%s"
  77. 1080    string    FLT4        audio/x-mod
  78. #audio/x-startracker-module
  79. #>0    string    >\0        Title: "%s"
  80. 1080    string    FLT8        audio/x-mod
  81. #audio/x-startracker-module
  82. #>0    string    >\0        Title: "%s"
  83. 1080    string    4CHN        audio/x-mod
  84. #audio/x-fasttracker-module
  85. #>0    string    >\0        Title: "%s"
  86. 1080    string    6CHN        audio/x-mod
  87. #audio/x-fasttracker-module
  88. #>0    string    >\0        Title: "%s"
  89. 1080    string    8CHN        audio/x-mod
  90. #audio/x-fasttracker-module
  91. #>0    string    >\0        Title: "%s"
  92. 1080    string    CD81        audio/x-mod
  93. #audio/x-oktalyzer-tracker-module
  94. #>0    string    >\0        Title: "%s"
  95. 1080    string    OKTA        audio/x-mod
  96. #audio/x-oktalyzer-tracker-module
  97. #>0    string    >\0        Title: "%s"
  98. # Not good enough.
  99. #1082    string    CH
  100. #>1080    string    >/0        %.2s-channel Fasttracker "oktalyzer" module sound data
  101. 1080    string    16CN        audio/x-mod
  102. #audio/x-taketracker-module
  103. #>0    string    >\0        Title: "%s"
  104. 1080    string    32CN        audio/x-mod
  105. #audio/x-taketracker-module
  106. #>0    string    >\0        Title: "%s"
  107.  
  108. # Impuse tracker module (it)
  109. 0    string        IMPM        audio/x-mod
  110. #>4    string        >\0        "%s"
  111. #>40    leshort        !0        compatible w/ITv%x
  112. #>42    leshort        !0        created w/ITv%x
  113.  
  114. #------------------------------------------------------------------------------
  115. # end local stuff
  116. #------------------------------------------------------------------------------
  117.  
  118. # xml based formats!
  119.  
  120. # svg
  121.  
  122. 38    string        \<\!DOCTYPE\040svg    image/svg+xml
  123.  
  124. 0    belong        0xfeedfeed    application/x-java-keystore
  125.  
  126. 0    belong        0xcececece    application/x-java-jce-keystore
  127.  
  128.  
  129. # xml
  130. 0    string        \<?xml            text/xml
  131.  
  132.  
  133. #------------------------------------------------------------------------------
  134. # Java
  135.  
  136. 0    beshort        0xcafe
  137. >2    beshort        0xbabe        application/x-java-applet
  138. >2    beshort        0xd00d        application/x-java-pack200
  139.  
  140. #------------------------------------------------------------------------------
  141. # audio:  file(1) magic for sound formats
  142. #
  143. # from Jan Nicolai Langfeldt <janl@ifi.uio.no>,
  144. #
  145.  
  146. # Sun/NeXT audio data
  147. 0    string        .snd
  148. >12    belong        1        audio/basic
  149. >12    belong        2        audio/basic
  150. >12    belong        3        audio/basic
  151. >12    belong        4        audio/basic
  152. >12    belong        5        audio/basic
  153. >12    belong        6        audio/basic
  154. >12    belong        7        audio/basic
  155.  
  156. >12    belong        23        audio/x-adpcm
  157.  
  158. # DEC systems (e.g. DECstation 5000) use a variant of the Sun/NeXT format
  159. # that uses little-endian encoding and has a different magic number
  160. # (0x0064732E in little-endian encoding).
  161. 0    lelong        0x0064732E
  162. >12    lelong        1        audio/x-dec-basic
  163. >12    lelong        2        audio/x-dec-basic
  164. >12    lelong        3        audio/x-dec-basic
  165. >12    lelong        4        audio/x-dec-basic
  166. >12    lelong        5        audio/x-dec-basic
  167. >12    lelong        6        audio/x-dec-basic
  168. >12    lelong        7        audio/x-dec-basic
  169. #                                       compressed (G.721 ADPCM)
  170. >12    lelong        23        audio/x-dec-adpcm
  171.  
  172. # Bytes 0-3 of AIFF, AIFF-C, & 8SVX audio files are "FORM"
  173. #                    AIFF audio data
  174. 8    string        AIFF        audio/x-aiff
  175. #                    AIFF-C audio data
  176. 8    string        AIFC        audio/x-aiff
  177. #                    IFF/8SVX audio data
  178. 8    string        8SVX        audio/x-aiff
  179.  
  180.  
  181.  
  182. # Creative Labs AUDIO stuff
  183. #                    Standard MIDI data
  184. 0    string    MThd            audio/x-midi
  185. #>9     byte    >0            (format %d)
  186. #>11    byte    >1            using %d channels
  187. 0    string    MThd            audio/midi
  188. #                    Creative Music (CMF) data
  189. 0    string    CTMF            audio/x-unknown
  190. #                    SoundBlaster instrument data
  191. 0    string    SBI            audio/x-unknown
  192. #                    Creative Labs voice data
  193. 0    string    Creative\ Voice\ File    audio/x-unknown
  194. ## is this next line right?  it came this way...
  195. #>19    byte    0x1A
  196. #>23    byte    >0            - version %d
  197. #>22    byte    >0            \b.%d
  198.  
  199. # [GRR 950115:  is this also Creative Labs?  Guessing that first line
  200. #  should be string instead of unknown-endian long...]
  201. #0    long        0x4e54524b    MultiTrack sound data
  202. #0    string        NTRK        MultiTrack sound data
  203. #>4    long        x        - version %ld
  204.  
  205. # Microsoft WAVE format (*.wav)
  206. # [GRR 950115:  probably all of the shorts and longs should be leshort/lelong]
  207. #                    Microsoft RIFF
  208. 0    string        RIFF
  209. #                    - WAVE format
  210. >8    string        WAVE        audio/x-wav
  211. >8    string/B    AVI        video/x-msvideo
  212. #
  213. >8     string        CDRA        image/x-coreldraw
  214.  
  215. # AAC (aka MPEG-2 NBC)
  216. 0       beshort&0xfff6    0xfff0          audio/X-HX-AAC-ADTS
  217. 0       string          ADIF            audio/X-HX-AAC-ADIF
  218. 0       beshort&0xffe0  0x56e0          audio/MP4A-LATM
  219. 0       beshort         0x4De1          audio/MP4A-LATM
  220.  
  221. # MPEG Layer 3 sound files
  222. # modified by Joerg Jenderek
  223. # GRR the original test are too common for many DOS files
  224. # so test 1 <= kbits nibble <= E
  225. 0       beshort        &0xffe0        
  226. >2    ubyte&0xF0    >0x0F        
  227. >>2    ubyte&0xF0    <0xE1        audio/mpeg
  228. #MP3 with ID3 tag
  229. 0    string        ID3        audio/mpeg
  230. # Ogg/Vorbis
  231. 0    string        OggS        application/ogg
  232.  
  233. #------------------------------------------------------------------------------
  234. # c-lang:  file(1) magic for C programs or various scripts
  235. #
  236.  
  237. # XPM icons (Greg Roelofs, newt@uchicago.edu)
  238. # ideally should go into "images", but entries below would tag XPM as C source
  239. 0    string        /*\ XPM        image/x-xpmi
  240.  
  241. # 3DS (3d Studio files) Conflicts with diff output 0x3d '='
  242. #16    beshort        0x3d3d        image/x-3ds
  243.  
  244. # this first will upset you if you're a PL/1 shop... (are there any left?)
  245. # in which case rm it; ascmagic will catch real C programs
  246. #                    C or REXX program text
  247. #0    string        /*        text/x-c
  248. #                    C++ program text
  249. #0    string        //        text/x-c++
  250.  
  251. #------------------------------------------------------------------------------
  252. # commands:  file(1) magic for various shells and interpreters
  253. #
  254. #0       string          :\ shell archive or commands for antique kernel text
  255. 0       string          #!/bin/sh               application/x-shellscript
  256. 0       string          #!\ /bin/sh             application/x-shellscript
  257. 0       string          #!/bin/csh              application/x-shellscript
  258. 0       string          #!\ /bin/csh            application/x-shellscript
  259. # korn shell magic, sent by George Wu, gwu@clyde.att.com
  260. 0       string          #!/bin/ksh              application/x-shellscript
  261. 0       string          #!\ /bin/ksh            application/x-shellscript
  262. 0       string          #!/bin/tcsh             application/x-shellscript
  263. 0       string          #!\ /bin/tcsh           application/x-shellscript
  264. 0       string          #!/usr/local/tcsh       application/x-shellscript
  265. 0       string          #!\ /usr/local/tcsh     application/x-shellscript
  266. 0       string          #!/usr/local/bin/tcsh   application/x-shellscript
  267. 0       string          #!\ /usr/local/bin/tcsh application/x-shellscript
  268. # bash shell magic, from Peter Tobias (tobias@server.et-inf.fho-emden.de)
  269. 0       string          #!/bin/bash             application/x-shellscript
  270. 0       string          #!\ /bin/bash           application/x-shellscript
  271. 0       string          #!/usr/local/bin/bash   application/x-shellscript
  272. 0       string          #!\ /usr/local/bin/bash application/x-shellscript
  273.  
  274. #
  275. # zsh/ash/ae/nawk/gawk magic from cameron@cs.unsw.oz.au (Cameron Simpson)
  276. 0       string          #!/bin/zsh            application/x-shellscript
  277. 0       string          #!/usr/bin/zsh            application/x-shellscript
  278. 0       string          #!/usr/local/bin/zsh    application/x-shellscript
  279. 0       string          #!\ /usr/local/bin/zsh  application/x-shellscript
  280. 0       string          #!/usr/local/bin/ash    application/x-shellscript
  281. 0       string          #!\ /usr/local/bin/ash  application/x-shellscript
  282. #0       string          #!/usr/local/bin/ae     Neil Brown's ae
  283. #0       string          #!\ /usr/local/bin/ae   Neil Brown's ae
  284. 0       string          #!/bin/nawk             application/x-nawk
  285. 0       string          #!\ /bin/nawk           application/x-nawk
  286. 0       string          #!/usr/bin/nawk         application/x-nawk
  287. 0       string          #!\ /usr/bin/nawk       application/x-nawk
  288. 0       string          #!/usr/local/bin/nawk   application/x-nawk
  289. 0       string          #!\ /usr/local/bin/nawk application/x-nawk
  290. 0       string          #!/bin/gawk             application/x-gawk
  291. 0       string          #!\ /bin/gawk           application/x-gawk
  292. 0       string          #!/usr/bin/gawk         application/x-gawk
  293. 0       string          #!\ /usr/bin/gawk       application/x-gawk
  294. 0       string          #!/usr/local/bin/gawk   application/x-gawk
  295. 0       string          #!\ /usr/local/bin/gawk application/x-gawk
  296. #
  297. 0       string          #!/bin/awk              application/x-awk
  298. 0       string          #!\ /bin/awk            application/x-awk
  299. 0       string          #!/usr/bin/awk          application/x-awk
  300. 0       string          #!\ /usr/bin/awk        application/x-awk
  301. # update to distinguish from *.vcf files by Joerg Jenderek: joerg dot jenderek at web dot de
  302. # Too general, \EBEGIN matches in postscript
  303. #0    regex        BEGIN[[:space:]]*[{]    application/x-awk
  304.  
  305. # For Larry Wall's perl language.  The ``eval'' line recognizes an
  306. # outrageously clever hack for USG systems.
  307. #                               Keith Waclena <keith@cerberus.uchicago.edu>
  308. 0       string          #!/bin/perl                     application/x-perl
  309. 0       string          #!\ /bin/perl                   application/x-perl
  310. 0       string          eval\ "exec\ /bin/perl          application/x-perl
  311. 0       string          #!/usr/bin/perl                 application/x-perl
  312. 0       string          #!\ /usr/bin/perl               application/x-perl
  313. 0       string          eval\ "exec\ /usr/bin/perl      application/x-perl
  314. 0       string          #!/usr/local/bin/perl           application/x-perl
  315. 0       string          #!\ /usr/local/bin/perl         application/x-perl
  316. 0       string          eval\ "exec\ /usr/local/bin/perl application/x-perl
  317.  
  318. # Type: Lua scripting language
  319. # URL:  http://www.lua.org/
  320. # From: Reuben Thomas <rrt@sc3d.org>
  321. 0    string/B    #!\ /usr/bin/lua    application/x-lua
  322. 0    string/B    #!\ /usr/local/bin/lua    application/x-lua
  323. 0    string        #!/usr/bin/env\ lua    application/x-lua
  324. 0    string        #!\ /usr/bin/env\ lua    application/x-lua
  325.  
  326. #------------------------------------------------------------------------------
  327. # compress:  file(1) magic for pure-compression formats (no archives)
  328. #
  329. # compress, gzip, pack, compact, huf, squeeze, crunch, freeze, yabba, whap, etc.
  330. #
  331. # Formats for various forms of compressed data
  332. # Formats for "compress" proper have been moved into "compress.c",
  333. # because it tries to uncompress it to figure out what's inside.
  334.  
  335. # standard unix compress
  336. #0    string        \037\235    application/x-compress
  337.  
  338. # gzip (GNU zip, not to be confused with [Info-ZIP/PKWARE] zip archiver)
  339. 0       string          \037\213        application/x-gzip
  340.  
  341. 0        string            PK\003\004        application/zip
  342.  
  343. # RAR archiver (Greg Roelofs, newt@uchicago.edu)
  344. 0    string        Rar!        application/x-rar
  345.  
  346. # According to gzip.h, this is the correct byte order for packed data.
  347. 0    string        \037\036    application/octet-stream
  348. #
  349. # This magic number is byte-order-independent.
  350. #
  351. 0    short        017437        application/octet-stream
  352.  
  353. # XXX - why *two* entries for "compacted data", one of which is
  354. # byte-order independent, and one of which is byte-order dependent?
  355. #
  356. # compacted data
  357. 0    short        0x1fff        application/octet-stream
  358. 0    string        \377\037    application/octet-stream
  359. # huf output
  360. 0    short        0145405        application/octet-stream
  361.  
  362. # Squeeze and Crunch...
  363. # These numbers were gleaned from the Unix versions of the programs to
  364. # handle these formats.  Note that I can only uncrunch, not crunch, and
  365. # I didn't have a crunched file handy, so the crunch number is untested.
  366. #                Keith Waclena <keith@cerberus.uchicago.edu>
  367. #0    leshort        0x76FF        squeezed data (CP/M, DOS)
  368. #0    leshort        0x76FE        crunched data (CP/M, DOS)
  369.  
  370. # Freeze
  371. #0    string        \037\237    Frozen file 2.1
  372. #0    string        \037\236    Frozen file 1.0 (or gzip 0.5)
  373.  
  374. # lzh?
  375. #0    string        \037\240    LZH compressed data
  376.  
  377. 257    string        ustar\0        application/x-tar    posix
  378. 257    string        ustar\040\040\0        application/x-tar    gnu
  379.  
  380. 0    short        070707        application/x-cpio
  381. 0    short        0143561        application/x-cpio    swapped
  382.  
  383. 0    string        =<ar>        application/x-archive
  384. 0    string        \!<arch>    application/x-archive
  385. >8    string        debian        application/x-debian-package
  386.  
  387. #------------------------------------------------------------------------------
  388. #
  389. # RPM: file(1) magic for Red Hat Packages   Erik Troan (ewt@redhat.com)
  390. #
  391. 0       beshort         0xedab
  392. >2      beshort         0xeedb          application/x-rpm
  393.  
  394. 0    lelong&0x8080ffff    0x0000081a    application/x-arc    lzw
  395. 0    lelong&0x8080ffff    0x0000091a    application/x-arc    squashed
  396. 0    lelong&0x8080ffff    0x0000021a    application/x-arc    uncompressed
  397. 0    lelong&0x8080ffff    0x0000031a    application/x-arc    packed
  398. 0    lelong&0x8080ffff    0x0000041a    application/x-arc    squeezed
  399. 0    lelong&0x8080ffff    0x0000061a    application/x-arc    crunched
  400.  
  401. 0    leshort    0xea60    application/x-arj
  402.  
  403. # LHARC/LHA archiver (Greg Roelofs, newt@uchicago.edu)
  404. 2    string    -lh0-    application/x-lharc    lh0
  405. 2    string    -lh1-    application/x-lharc    lh1
  406. 2    string    -lz4-    application/x-lharc    lz4
  407. 2    string    -lz5-    application/x-lharc    lz5
  408. #    [never seen any but the last; -lh4- reported in comp.compression:]
  409. 2    string    -lzs-    application/x-lha    lzs
  410. 2    string    -lh\ -    application/x-lha    lh
  411. 2    string    -lhd-    application/x-lha    lhd
  412. 2    string    -lh2-    application/x-lha    lh2
  413. 2    string    -lh3-    application/x-lha    lh3
  414. 2    string    -lh4-    application/x-lha    lh4
  415. 2    string    -lh5-    application/x-lha    lh5
  416. 2    string    -lh6-    application/x-lha    lh6
  417. 2    string    -lh7-    application/x-lha    lh7
  418. # Shell archives
  419. 10    string    #\ This\ is\ a\ shell\ archive    application/octet-stream    x-shell
  420.  
  421. #------------------------------------------------------------------------------
  422. # frame:  file(1) magic for FrameMaker files
  423. #
  424. # This stuff came on a FrameMaker demo tape, most of which is
  425. # copyright, but this file is "published" as witness the following:
  426. #
  427. # Note that this is the Framemaker Maker Interchange Format, not the
  428. # Normal format which would be application/vnd.framemaker.
  429. #
  430. 0    string        \<MakerFile    application/x-mif
  431. 0    string        \<MIFFile    application/x-mif
  432. 0    string        \<MakerDictionary    application/x-mif
  433. 0    string        \<MakerScreenFon    application/x-mif
  434. 0    string        \<MML        application/x-mif
  435. 0    string        \<Book        application/x-mif
  436. 0    string        \<Maker        application/x-mif
  437.  
  438. #------------------------------------------------------------------------------
  439. # html:  file(1) magic for HTML (HyperText Markup Language) docs
  440. #
  441. # from Michael Piefel <piefel@debian.org>
  442. #
  443. 0    string/cB    \<!DOCTYPE\ html    text/html
  444. 0    string/cb    \<head            text/html
  445. 0    string/cb    \<title            text/html
  446. 0    string/bc    \<html            text/html
  447. 0    string        \<!--            text/html
  448. 0    string/c    \<h1            text/html
  449.  
  450. #------------------------------------------------------------------------------
  451. # images:  file(1) magic for image formats (see also "c-lang" for XPM bitmaps)
  452. #
  453. # originally from jef@helios.ee.lbl.gov (Jef Poskanzer),
  454. # additions by janl@ifi.uio.no as well as others. Jan also suggested
  455. # merging several one- and two-line files into here.
  456. #
  457. # XXX - byte order for GIF and TIFF fields?
  458. # [GRR:  TIFF allows both byte orders; GIF is probably little-endian]
  459. #
  460.  
  461. # [GRR:  what the hell is this doing in here?]
  462. #0    string        xbtoa        btoa'd file
  463.  
  464. # PBMPLUS
  465. #                    PBM file
  466. 0    string        P1        image/x-portable-bitmap
  467. #                    PGM file
  468. 0    string        P2        image/x-portable-greymap
  469. #                    PPM file
  470. 0    string        P3        image/x-portable-pixmap
  471. #                    PBM "rawbits" file
  472. 0    string        P4        image/x-portable-bitmap
  473. #                    PGM "rawbits" file
  474. 0    string        P5        image/x-portable-greymap
  475. #                    PPM "rawbits" file
  476. 0    string        P6        image/x-portable-pixmap
  477.  
  478. # NIFF (Navy Interchange File Format, a modification of TIFF)
  479. # [GRR:  this *must* go before TIFF]
  480. 0    string        IIN1        image/x-niff
  481.  
  482. # TIFF and friends
  483. #                    TIFF file, big-endian
  484. 0    string        MM        image/tiff
  485. #                    TIFF file, little-endian
  486. 0    string        II        image/tiff
  487.  
  488. # possible GIF replacements; none yet released!
  489. # (Greg Roelofs, newt@uchicago.edu)
  490. #
  491. # GRR 950115:  this was mine ("Zip GIF"):
  492. #                    ZIF image (GIF+deflate alpha)
  493. 0    string        GIF94z        image/x-unknown
  494. #
  495. # GRR 950115:  this is Jeremy Wohl's Free Graphics Format (better):
  496. #                    FGF image (GIF+deflate beta)
  497. 0    string        FGF95a        image/x-unknown
  498. #
  499. # GRR 950115:  this is Thomas Boutell's Portable Bitmap Format proposal
  500. # (best; not yet implemented):
  501. #                    PBF image (deflate compression)
  502. 0    string        PBF        image/x-unknown
  503.  
  504. # GIF
  505. 0    string        GIF        image/gif
  506.  
  507. # JPEG images
  508. 0    beshort        0xffd8        image/jpeg
  509.  
  510. # PC bitmaps (OS/2, Windoze BMP files)  (Greg Roelofs, newt@uchicago.edu)
  511. 0    string        BM        image/x-ms-bmp
  512. #>14    byte        12        (OS/2 1.x format)
  513. #>14    byte        64        (OS/2 2.x format)
  514. #>14    byte        40        (Windows 3.x format)
  515. #0    string        IC        icon
  516. #0    string        PI        pointer
  517. #0    string        CI        color icon
  518. #0    string        CP        color pointer
  519. #0    string        BA        bitmap array
  520.  
  521. # CDROM Filesystems
  522. 32769    string    CD001     application/x-iso9660-image
  523.  
  524. # Newer StuffIt archives (grant@netbsd.org)
  525. 0    string        StuffIt            application/x-stuffit
  526. #>162    string        >0            : %s
  527.  
  528. # BinHex is the Macintosh ASCII-encoded file format (see also "apple")
  529. # Daniel Quinlan, quinlan@yggdrasil.com
  530. 11    string    must\ be\ converted\ with\ BinHex\ 4    application/mac-binhex40
  531. ##>41    string    x                    \b, version %.3s
  532.  
  533.  
  534. #------------------------------------------------------------------------------
  535. # lisp:  file(1) magic for lisp programs
  536. #
  537. # various lisp types, from Daniel Quinlan (quinlan@yggdrasil.com)
  538. 0    string    ;;            text/plain
  539. # Emacs 18 - this is always correct, but not very magical.
  540. 0    string    \012(            application/x-elc
  541. # Emacs 19
  542. 0    string    ;ELC\023\000\000\000    application/x-elc
  543.  
  544. #------------------------------------------------------------------------------
  545. # mail.news:  file(1) magic for mail and news
  546. #
  547. # There are tests to ascmagic.c to cope with mail and news.
  548. 0    string        Relay-Version:     message/rfc822
  549. 0    string        #!\ rnews    message/rfc822
  550. 0    string        N#!\ rnews    message/rfc822
  551. 0    string        Forward\ to     message/rfc822
  552. 0    string        Pipe\ to     message/rfc822
  553. 0    string        Return-Path:    message/rfc822
  554. 0    string        Received:    message/rfc822
  555. 0    string        Path:        message/news
  556. 0    string        Xref:        message/news
  557. 0    string        From:        message/rfc822
  558. 0    string        Article     message/news
  559. #------------------------------------------------------------------------------
  560. # msword: file(1) magic for MS Word files
  561. #
  562. # Contributor claims:
  563. # Reversed-engineered MS Word magic numbers
  564. #
  565.  
  566. 0    string        \376\067\0\043            application/msword
  567. # disable this one because it applies also to other
  568. # Office/OLE documents for which msword is not correct. See PR#2608.
  569. # from magic file of the apache
  570. #0    string        \320\317\021\340\241\261    application/msword
  571. 512    string        \354\245\301            application/msword
  572. 0    string        \333\245-\0\0\0            application/msword
  573.  
  574.  
  575.  
  576. #------------------------------------------------------------------------------
  577. # printer:  file(1) magic for printer-formatted files
  578. #
  579.  
  580. # PostScript
  581. 0    string        %!        application/postscript
  582. 0    string        \004%!        application/postscript
  583.  
  584. # Acrobat
  585. # (due to clamen@cs.cmu.edu)
  586. 0    string        %PDF-        application/pdf
  587.  
  588. #------------------------------------------------------------------------------
  589. # sc:  file(1) magic for "sc" spreadsheet
  590. #
  591. 38    string        Spreadsheet    application/x-sc
  592.  
  593. #------------------------------------------------------------------------------
  594. # tex:  file(1) magic for TeX files
  595. #
  596. # XXX - needs byte-endian stuff (big-endian and little-endian DVI?)
  597. #
  598. # From <conklin@talisman.kaleida.com>
  599.  
  600. # Although we may know the offset of certain text fields in TeX DVI
  601. # and font files, we can't use them reliably because they are not
  602. # zero terminated. [but we do anyway, christos]
  603. 0    string        \367\002    application/x-dvi
  604. #0    string        \367\203    TeX generic font data
  605. #0    string        \367\131    TeX packed font data
  606. #0    string        \367\312    TeX virtual font data
  607. #0    string        This\ is\ TeX,    TeX transcript text
  608. #0    string        This\ is\ METAFONT,    METAFONT transcript text
  609.  
  610. # There is no way to detect TeX Font Metric (*.tfm) files without
  611. # breaking them apart and reading the data.  The following patterns
  612. # match most *.tfm files generated by METAFONT or afm2tfm.
  613. 2    string        \000\021    application/x-tex-tfm
  614. 2    string        \000\022    application/x-tex-tfm
  615. #>34    string        >\0        (%s)
  616.  
  617. # Texinfo and GNU Info, from Daniel Quinlan (quinlan@yggdrasil.com)
  618. 0    string        \\input\ texinfo        text/x-texinfo
  619. 0    string        This\ is\ Info\ file    text/x-info
  620.  
  621. # correct TeX magic for Linux (and maybe more)
  622. # from Peter Tobias (tobias@server.et-inf.fho-emden.de)
  623. #
  624. 0    leshort        0x02f7        application/x-dvi
  625.  
  626. # RTF - Rich Text Format
  627. 0    string        {\\rtf        text/rtf
  628.  
  629. # TeX documents, from Daniel Quinlan (quinlan@yggdrasil.com)
  630. 0    search/400    \\input        text/x-tex
  631. 0    search/400    \\section    text/x-tex
  632. 0    search/400    \\setlength    text/x-tex
  633. 0    search/400    \\documentstyle    text/x-tex
  634. 0    search/400    \\chapter    text/x-tex
  635. 0    search/400    \\documentclass    text/x-tex
  636.  
  637. # Type: Inform interactive fiction language
  638. # URL:  http://www.inform-fiction.org/
  639. # From: Reuben Thomas <rrt@sc3d.org>
  640. 0    regex        [Cc]onstant[[:space:]]+[Ss]tory    text/x-inform
  641.  
  642. #------------------------------------------------------------------------------
  643. # animation:  file(1) magic for animation/movie formats
  644. #
  645. # animation formats, originally from vax@ccwf.cc.utexas.edu (VaX#n8)
  646. #                        MPEG file
  647. # MPEG sequences
  648. 0       belong             0x000001BA
  649. >4      byte               &0x40          video/mp2p
  650. >4      byte               ^0x40          video/mpeg
  651. 0       belong             0x000001BB     video/mpeg
  652. 0       belong             0x000001B0     video/mp4v-es
  653. 0       belong             0x000001B5     video/mp4v-es
  654. 0       belong             0x000001B3     video/mpv
  655. 0       belong&0xFF5FFF1F  0x47400010     video/mp2t
  656. 0       belong             0x00000001
  657. >4      byte&0x1F       0x07           video/h264
  658.  
  659. # FLI animation format
  660. 0    leshort        0xAF11                video/x-fli
  661. # FLC animation format
  662. 0    leshort        0xAF12                video/x-flc
  663. #
  664. # SGI and Apple formats
  665. # Added ISO mimes
  666. 0    string        MOVI          video/x-sgi-movie
  667. 4    string        moov          video/quicktime
  668. 4    string        mdat          video/quicktime
  669. 4    string        wide          video/quicktime
  670. 4    string        skip          video/quicktime
  671. 4    string        free          video/quicktime
  672. 4    string        idsc          image/x-quicktime
  673. 4    string        idat          image/x-quicktime
  674. 4    string        pckg          application/x-quicktime-player
  675. 4    string/B    jP          image/jp2
  676. 4    string        ftyp
  677. >8    string        isom          video/mp4
  678. >8    string        mp41          video/mp4
  679. >8    string        mp42          video/mp4
  680. >8    string/B    jp2          image/jp2
  681. >8    string        3gp          video/3gpp
  682. >8      string          avc1          video/3gpp
  683. >8    string        mmp4          video/mp4
  684. >8    string/B    M4A          audio/mp4
  685. >8    string/B    M4V          video/mp4
  686. >8    string/B    qt          video/quicktime
  687. # The contributor claims:
  688. #   I couldn't find a real magic number for these, however, this
  689. #   -appears- to work.  Note that it might catch other files, too,
  690. #   so BE CAREFUL!
  691. #
  692. # Note that title and author appear in the two 20-byte chunks
  693. # at decimal offsets 2 and 22, respectively, but they are XOR'ed with
  694. # 255 (hex FF)! DL format SUCKS BIG ROCKS.
  695. #
  696. #                        DL file version 1 , medium format (160x100, 4 images/screen)
  697. 0    byte        1            video/x-unknown
  698. 0    byte        2            video/x-unknown
  699. #
  700. # Databases
  701. #
  702. # GDBM magic numbers
  703. #  Will be maintained as part of the GDBM distribution in the future.
  704. #  <downsj@teeny.org>
  705. 0       belong  0x13579ace      application/x-gdbm
  706. 0       lelong  0x13579ace      application/x-gdbm
  707. 0       string  GDBM            application/x-gdbm
  708. #
  709. 0       belong  0x061561        application/x-dbm
  710. #
  711. # Executables
  712. #
  713. 0    string        \177ELF
  714. >16    leshort        0        application/octet-stream
  715. >16    leshort        1        application/x-object
  716. >16    leshort        2        application/x-executable
  717. >16    leshort        3        application/x-sharedlib
  718. >16    leshort        4        application/x-coredump
  719. >16    beshort        0        application/octet-stream
  720. >16    beshort        1        application/x-object
  721. >16    beshort        2        application/x-executable
  722. >16    beshort        3        application/x-sharedlib
  723. >16    beshort        4        application/x-coredump
  724. #
  725. # DOS
  726. 0        string            MZ                application/x-dosexec
  727. #
  728. # KDE
  729. 0        string    [KDE\ Desktop\ Entry]    application/x-kdelnk
  730. 0        string    #\ KDE\ Config\ File    application/x-kdelnk
  731. # xmcd database file for kscd
  732. 0        string    #\ xmcd                text/x-xmcd
  733.  
  734. #------------------------------------------------------------------------------
  735. # pkgadd:  file(1) magic for SysV R4 PKG Datastreams
  736. #
  737. 0       string          #\ PaCkAgE\ DaTaStReAm  application/x-svr4-package
  738.  
  739. #PNG Image Format
  740. 0    string        \x89PNG            image/png
  741.  
  742. # MNG Video Format, <URL:http://www.libpng.org/pub/mng/spec/>
  743. 0    string        \x8aMNG            video/x-mng
  744. 0    string        \x8aJNG            video/x-jng
  745.  
  746. #------------------------------------------------------------------------------
  747. # Hierarchical Data Format, used to facilitate scientific data exchange
  748. # specifications at http://hdf.ncsa.uiuc.edu/
  749. #Hierarchical Data Format (version 4) data
  750. 0    belong        0x0e031301        application/x-hdf
  751. #Hierarchical Data Format (version 5) data
  752. 0    string        \211HDF\r\n\032        application/x-hdf
  753.  
  754. # Adobe Photoshop
  755. 0    string        8BPS            image/vnd.adobe.photoshop
  756.  
  757. # Felix von Leitner <felix-file@fefe.de>
  758. 0    string        d8:announce        application/x-bittorrent
  759.  
  760.  
  761. # lotus 1-2-3 document
  762. 0    belong    0x00001a00    application/x-123
  763. 0    belong    0x00000200     application/x-123
  764.  
  765. # MS Access database
  766. 4    string    Standard\ Jet\ DB    application/x-msaccess
  767.  
  768. ## magic for XBase files
  769. #0      byte       0x02
  770. #>8     leshort      >0
  771. #>>12   leshort    0    application/x-dbf
  772. #
  773. #0      byte       0x03
  774. #>8     leshort      >0
  775. #>>12   leshort    0    application/x-dbf
  776. #
  777. #0      byte       0x04
  778. #>8     leshort      >0
  779. #>>12   leshort    0    application/x-dbf
  780. #
  781. #0      byte       0x05
  782. #>8     leshort      >0
  783. #>>12   leshort    0    application/x-dbf
  784. #
  785. #0      byte       0x30
  786. #>8     leshort      >0
  787. #>>12   leshort    0    application/x-dbf
  788. #
  789. #0      byte       0x43
  790. #>8     leshort      >0
  791. #>>12   leshort    0    application/x-dbf
  792. #
  793. #0      byte       0x7b
  794. #>8     leshort      >0
  795. #>>12   leshort    0    application/x-dbf
  796. #
  797. #0      byte       0x83
  798. #>8     leshort      >0
  799. #>>12   leshort    0    application/x-dbf
  800. #
  801. #0      byte       0x8b
  802. #>8     leshort      >0
  803. #>>12   leshort    0    application/x-dbf
  804. #
  805. #0      byte       0x8e
  806. #>8     leshort      >0
  807. #>>12   leshort    0    application/x-dbf
  808. #
  809. #0      byte       0xb3
  810. #>8     leshort      >0
  811. #>>12   leshort    0    application/x-dbf
  812. #
  813. #0      byte       0xf5
  814. #>8     leshort      >0
  815. #>>12   leshort    0    application/x-dbf
  816. #
  817. #0    leshort        0x0006        application/x-dbt
  818.  
  819. # Debian has entries for the old PGP formats:
  820. # pgp:  file(1) magic for Pretty Good Privacy
  821. # see http://lists.gnupg.org/pipermail/gnupg-devel/1999-September/016052.html
  822. #0       beshort         0x9900                  application/x-pgp-keyring
  823. #0       beshort         0x9501                  application/x-pgp-keyring
  824. #0       beshort         0x9500                  application/x-pgp-keyring
  825. #0       beshort         0xa600                  application/pgp-encrypted
  826. #0       string          -----BEGIN\040PGP       text/PGP armored data
  827. #>15     string          PUBLIC\040KEY\040BLOCK- public key block
  828. #>15     string          MESSAGE-                message
  829. #>15     string          SIGNED\040MESSAGE-      signed message
  830. #>15     string          PGP\040SIGNATURE-       signature
  831. #0       beshort         0x8501                  data
  832. #text/PGP key public ring
  833. 0    beshort        0x9900        application/pgp
  834. #text/PGP key security ring
  835. 0    beshort        0x9501        application/pgp
  836. #text/PGP key security ring
  837. 0    beshort        0x9500        application/pgp
  838. #text/PGP encrypted data
  839. 0    beshort        0xa600        application/pgp-encrypted
  840. #text/PGP armored data
  841. ##public key block
  842. 2    string    ---BEGIN\ PGP\ PUBLIC\ KEY\ BLOCK-    application/pgp-keys
  843. 0    string    -----BEGIN\040PGP\40MESSAGE-        application/pgp
  844. 0    string    -----BEGIN\040PGP\40SIGNATURE-        application/pgp-signature
  845.  
  846. #
  847. # GnuPG Magic:
  848. #
  849. #0       beshort         0x9901                  application/x-gnupg-keyring
  850. #0       beshort         0x8501                  text/OpenPGP data
  851. #text/GnuPG key public ring
  852. 0    beshort        0x9901        application/pgp
  853. #text/OpenPGP data
  854. 0    beshort        0x8501        application/pgp-encrypted
  855.  
  856. # flash:        file(1) magic for Macromedia Flash file format
  857. #
  858. # See
  859. #
  860. #       http://www.macromedia.com/software/flash/open/
  861. #
  862. 0    string        FWS
  863. >3    byte        x            application/x-shockwave-flash
  864. # Flash Video
  865. 0    string        FLV            video/x-flv
  866.  
  867.  
  868. # The following paramaters are created for Namazu.
  869. # <http://www.namazu.org/>
  870. #
  871. # 1999/08/13
  872. #0    string        \<!--\ MHonArc        text/html; x-type=mhonarc
  873. 0    string        BZh            application/x-bzip2
  874.  
  875. # 1999/09/09
  876. # VRML (suggested by Masao Takaku)
  877. 0    string        #VRML\ V1.0\ ascii    model/vrml
  878. 0    string        #VRML\ V2.0\ utf8    model/vrml
  879.  
  880. #------------------------------------------------------------------------------
  881. # ichitaro456: file(1) magic for Just System Word Processor Ichitaro
  882. #
  883. # Contributor kenzo-:
  884. # Reversed-engineered JS Ichitaro magic numbers
  885. #
  886.  
  887. 0    string        DOC
  888. >43    byte        0x14        application/x-ichitaro4
  889. >144    string    JDASH        application/x-ichitaro4
  890.  
  891. 0    string        DOC
  892. >43    byte        0x15        application/x-ichitaro5
  893.  
  894. 0    string        DOC
  895. >43    byte        0x16        application/x-ichitaro6
  896.  
  897. #------------------------------------------------------------------------------
  898. # office97: file(1) magic for MicroSoft Office files
  899. #
  900. # Contributor kenzo-:
  901. # Reversed-engineered MS Office magic numbers
  902. #
  903.  
  904. #0       string          \320\317\021\340\241\261\032\341
  905. #>48     byte            0x1B            application/excel
  906.  
  907. 2080    string    Microsoft\ Excel\ 5.0\ Worksheet    application/vnd.ms-excel
  908. 2114    string    Biff5                    application/vnd.ms-excel
  909.  
  910. 0       string    \224\246\056        application/msword
  911.  
  912. 0    belong    0x31be0000        application/msword
  913.  
  914. 0    string    PO^Q`            application/msword
  915.  
  916. 0    string    \320\317\021\340\241\261\032\341
  917. >546    string    bjbj            application/msword
  918. >546    string    jbjb            application/msword
  919.  
  920. 512    string    R\0o\0o\0t\0\ \0E\0n\0t\0r\0y    application/msword
  921.  
  922. 2080    string    Microsoft\ Word\ 6.0\ Document    application/msword
  923. 2080    string    Documento\ Microsoft\ Word\ 6    application/msword
  924. 2112    string    MSWordDoc            application/msword
  925.  
  926. #0    string    \320\317\021\340\241\261\032\341    application/powerpoint
  927. 0    string    \320\317\021\340\241\261\032\341    application/msword
  928.  
  929. 0       string  #\ PaCkAgE\ DaTaStReAm  application/x-svr4-package
  930.  
  931.  
  932. # WinNT/WinCE PE files (Warner Losh, imp@village.org)
  933. #
  934. 128        string    PE\000\000    application/octet-stream
  935. 0        string    PE\000\000    application/octet-stream
  936.  
  937. # miscellaneous formats
  938. 0        string    LZ        application/octet-stream
  939.  
  940. # DOS device drivers by Joerg Jenderek
  941. 0    belong        0xffffffff    application/octet-stream
  942.  
  943. # .EXE formats (Greg Roelofs, newt@uchicago.edu)
  944. #
  945. 0        string    MZ
  946. >24        string    @        application/octet-stream
  947.  
  948. 0        string    MZ
  949. >30        string    Copyright\ 1989-1990\ PKWARE\ Inc.    application/zip
  950.  
  951. 0        string    MZ
  952. >30        string    PKLITE\ Copr.    application/zip
  953.  
  954. 0        string    MZ
  955. >36        string    LHa's\ SFX    application/x-lha
  956.  
  957. 0        string    MZ        application/octet-stream
  958.  
  959. # LHA archiver
  960. 2        string    -lh
  961. >6        string    -        application/x-lha
  962.  
  963.  
  964. # Zoo archiver
  965. 20        lelong    0xfdc4a7dc    application/x-zoo
  966.  
  967. # ARC archiver
  968. 0           lelong&0x8080ffff    0x0000081a    application/x-arc
  969. 0        lelong&0x8080ffff    0x0000091a    application/x-arc
  970. 0        lelong&0x8080ffff    0x0000021a    application/x-arc
  971. 0        lelong&0x8080ffff    0x0000031a    application/x-arc
  972. 0        lelong&0x8080ffff    0x0000041a    application/x-arc
  973. 0        lelong&0x8080ffff    0x0000061a    application/x-arc
  974.  
  975. # Microsoft Outlook's Transport Neutral Encapsulation Format (TNEF)
  976. 0        lelong    0x223e9f78    application/vnd.ms-tnef
  977.  
  978. # From: stephane.loeuillet@tiscali.f
  979. # http://www.djvuzone.org/
  980. 0    string        AT&TFORM    image/vnd.djvu
  981.  
  982. # Danny Milosavljevic <danny.milo@gmx.net>
  983. # this are adrift (adventure game standard) game files, extension .taf
  984. # depending on version magic continues with 0x93453E6139FA (V 4.0)
  985. # 0x9445376139FA (V 3.90)
  986. # 0x9445366139FA (V 3.80)
  987. # this is from source (http://www.adrift.org.uk/) and I have some taf
  988. # files, and checked them.
  989. #0    belong    0x3C423FC9
  990. #>4    belong    0x6A87C2CF    application/x-adrift
  991. #0    string    \000\000\001\000    image/x-ico
  992.  
  993. # Quark Xpress 3 Files:
  994. # (made the mimetype up)
  995. 0    string    \0\0MMXPR3\0    application/x-quark-xpress-3
  996.  
  997. # EET archive
  998. # From: Tilman Sauerbeck <tilman@code-monkey.de>
  999. 0    belong    0x1ee7ff00    application/x-eet
  1000.  
  1001. # From: Denis Knauf, via gentoo.
  1002. 0    string    fLaC        audio/x-flac
  1003. 0    string    CWS        application/x-shockwave-flash
  1004.  
  1005. # Hangul Document Files:
  1006. # Reversed-engineered HWP magic numbers
  1007. # From: Won-Kyu Park <wkpark@kldp.org>
  1008. 512    string        R\0o\0o\0t\0    application/x-hwp
  1009.  
  1010. 0    string/c    BEGIN:VCARD    text/x-vcard
  1011. 0    string        WordPro\0    application/vnd.lotus-wordpro
  1012. 0    string        WordPro\r\373    application/vnd.lotus-wordpro
  1013. 0    string        CPC\262        image/x-cpi
  1014.  
  1015. 128    string        DICM        application/dicom
  1016.  
  1017. # Symbian installation files
  1018. 8    lelong    0x10000419    application/vnd.symbian.install
  1019. 0    lelong    0x10201A7A    x-epoc/x-sisx-app
  1020. # FORTRAN source
  1021. 0    string/c    c\         text/x-fortran
  1022.  
  1023. # Gnumeric spreadsheet
  1024. # This entry is only semi-helpful, as Gnumeric compresses its files, so
  1025. # they will ordinarily reported as "compressed", but at least -z helps
  1026. 39    string    =<gmr:Workbook    application/x-gnumeric
  1027.